/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package raccoon.suvisa.logica.servicios.manejador.tasaciones.beans;

import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.Date;
import java.util.logging.Logger;
import javax.ejb.EJB;
import raccoon.suvisa.logica.servicios.manejador.tasaciones.*;
import javax.ejb.Stateless;
import raccoon.suvisa.datos.entities.Transaccion;
import raccoon.suvisa.datos.fachadas.FachadaDatosRemote;
import raccoon.suvisa.datos.fachadas.TransaccionRemote;
import raccoon.suvisa.logica.servicios.localizadorServicios.LocalizadorDatosLocal;

/**
 *
 * @author Gabriel
 */
@Stateless
public class TransaccionesBean implements TransaccionesRemote {

    @EJB
    private LocalizadorDatosLocal data;

    public BigDecimal guardarTransaccion(char cancelada, BigInteger cuotas, Date fecha, Date fechaCancelada, BigInteger cuentad, BigInteger cuentao, double monto) {
        try {
            Transaccion t = new Transaccion();
            FachadaDatosRemote ret = data.getFachadaDatos();
            TransaccionRemote tr = ret.getMetodosTransaccion();
            t.setCancelada(cancelada);
            t.setCuotas(cuotas);
            t.setFecha(fecha);
            t.setFechacancelada(fechaCancelada);
            t.setIdCuentad(cuentad);
            t.setIdCuentao(cuentao);
            t.setIdTransaccion(BigDecimal.ZERO);
            t.setMonto(monto);
            return tr.guardarNuevaTransaccion(t);
        } catch (Exception e) {
            Logger.getLogger(TransaccionesBean.class.getName()).info("ERROR !! NOOO:".concat(e.getMessage()));
        }
        return BigDecimal.ZERO;
    }

    public Transaccion getTransaccion(BigDecimal idTransaccion) {
        try {
            Transaccion t = new Transaccion();
            FachadaDatosRemote ret = data.getFachadaDatos();
            TransaccionRemote tr = ret.getMetodosTransaccion();
            return tr.getTransaccion(idTransaccion);
        } catch (Exception e) {
            Logger.getLogger(TransaccionesBean.class.getName()).info("ERROR !! NOOO:".concat(e.getMessage()));
        }
        return null;
    }

    public boolean actualizarTransaccion(Transaccion transaccion) {
        try {
            Transaccion t = new Transaccion();
            FachadaDatosRemote ret = data.getFachadaDatos();
            TransaccionRemote tr = ret.getMetodosTransaccion();
            return tr.actualizarTransaccion(transaccion);
        } catch (Exception e) {
            Logger.getLogger(TransaccionesBean.class.getName()).info("ERROR !! NOOO:".concat(e.getMessage()));
        }
        return false;
    }
}
